#include<iostream>
#include<algorithm>

// 10
// 1999999
// 12
// 1999999
// -48444
// 568
// 12
// -100
// -2845630
// 1000000001
// 263
// //数出
// 6 3 6 1 5 3 2 0 7 4

using namespace std;

const int N=1e8+10;

int a[N];
int b[N];
int len=0;

int find(int p)
{
   int left=0;
   int right=len-1;
   while(left<=right)
   {
      int mid=left+(right-left)/2;
      if(b[mid]<p) left=mid+1;
      else right=mid-1;
   }
   return left;
}


int main()
{
   int n=0;
   cin>>n;
   for(int i=0;i<n;i++)
   {
      cin>>a[i];
      b[i]=a[i];
   }
   sort(b,b+n);
   len=unique(b,b+n)-b;
   for(int i=0;i<n;i++)
   {
      printf("%d的离散数为：%d\n",a[i],find(a[i]));
   }
}